#pragma once

#include "SoldierContainer.h"

class Soldier;

class BattleMap
{
public:
	BattleMap(unsigned int row, unsigned int column);
	~BattleMap();

	bool AddSoldierToMap(Soldier* pSoldier);
	void RemoveSoldierFromMap(Soldier* pSoldier);

	unsigned int GetMapRow();
	unsigned int GetMapColumn();

private:
	bool InsertSoldierToColumn(Soldier* pSoldier, unsigned int column);
	void InsertSoldierToMap(Soldier* pSoldier, unsigned int row, unsigned int column);

	int GetEndOfColumn(unsigned int column);

	unsigned int m_cMapRow;
	unsigned int m_cMapColumn;

	unsigned int* m_piMap;

	SoldierContainer m_SoldierContainer;
};